package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;

@Data
@TableName("t_employee_reinstatement")
@ApiModel(value = "员工复职申请")
public class EmployeeReinstatement {

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("员工姓名")
    private String employeeName;

    @ApiModelProperty("工号")
    private String employeeId;

    @ApiModelProperty("原部门")
    private String originalDepartment;

    @ApiModelProperty("复职类型")
    private String reinstatementType;

    @ApiModelProperty("离职原因")
    private String leaveReason;

    @ApiModelProperty("复职申请原因")
    private String reapplyReason;

    @ApiModelProperty("主管审批人")
    private String managerApproval;

    @ApiModelProperty("总监审批人")
    private String directorApproval;

    @ApiModelProperty("人力资源审批人")
    private String hrApproval;

    @ApiModelProperty("总经理审批人")
    private String gmApproval;

    @ApiModelProperty("状态")
    private String status;

    @TableField(fill = FieldFill.INSERT)
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    @ApiModelProperty("创建人")
    private String createBy;

    @ApiModelProperty("更新人")
    private String updateBy;

    @TableLogic
    @ApiModelProperty("是否删除")
    private Boolean isDeleted;
} 